#pragma once

class t_Message;

class t_MessageRecipient
{
public:
	// A constructor
	/**
	* A constructor for default/dummy Message Recepient.
	*/
	t_MessageRecipient(void);
	/**
	* A virtual destructor
	*/
	virtual ~t_MessageRecipient(void);

	/**
	* ProcessMessage function is called when message is to be delivered.
	* Pure virtual function; user should implement custom t_MessageRecipient
	* @param p_Message is a pointer to the message 
	* @return  0 - ok 
	* @return -1 - error processing message
	*/
	virtual int ProcessMessage(t_Message* p_Message);
};

